Repository navigation
feat(cymbal): evaluate error tracking severity rules - #86268
Merged
trunk-io[bot] merged 3 commits intoAug 24, 2026
Merged
Conversation
This was referenced Aug 20, 2026
Contributor
🤖 CI report✅ Trunk lane — non-backend laneThis PR is assigned to the non-backend lane. It does not run backend Python tests and may merge in parallel with PRs in other lanes. |
hpouillot
force-pushed
the
hp/error-tracking-severity-rules-01-api
branch
from
August 20, 2026 10:22
3672947 to
fd29f0a
Compare
hpouillot
force-pushed
the
hp/error-tracking-severity-rules-02-evaluator
branch
from
August 20, 2026 10:22
06cfaae to
6ac019e
Compare
hpouillot
force-pushed
the
hp/error-tracking-severity-rules-01-api
branch
from
August 20, 2026 10:30
fd29f0a to
b163bf9
Compare
hpouillot
force-pushed
the
hp/error-tracking-severity-rules-02-evaluator
branch
from
August 20, 2026 10:30
6ac019e to
18c7e3a
Compare
hpouillot
force-pushed
the
hp/error-tracking-severity-rules-01-api
branch
from
August 20, 2026 10:57
b163bf9 to
78263a9
Compare
hpouillot
force-pushed
the
hp/error-tracking-severity-rules-02-evaluator
branch
from
August 20, 2026 10:57
18c7e3a to
c381c72
Compare
hpouillot
marked this pull request as ready for review
August 20, 2026 11:13
Contributor
Prompt To Fix All With AI### Issue 1
rust/cymbal/src/modes/processing/rules/severity.rs:220-228
**Disabled rules remain cached**
After an invalid rule is disabled in Postgres, `get_severity_rules` continues returning the cached vector containing it. Each event for that team re-executes the invalid program and issues another database update until the default five-minute TTL expires, adding repeated writes and processing overhead.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Reviews (1): Last reviewed commit: "feat(cymbal): evaluate severity rules" | Re-trigger Greptile |
ablaszkiewicz
approved these changes
Aug 20, 2026
ablaszkiewicz
left a comment
Contributor
There was a problem hiding this comment.
I approved to not block but I think greptiles comment should be addressed. Removed auto merge
hpouillot
force-pushed
the
hp/error-tracking-severity-rules-02-evaluator
branch
from
August 20, 2026 14:06
c381c72 to
8b099dd
Compare
cat-ph
approved these changes
Aug 20, 2026
Base automatically changed from
hp/error-tracking-severity-rules-01-api
to
master
August 20, 2026 15:51
|
😎 Merged successfully - details. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Cymbal needs a bounded, failure-safe evaluator for the severity-rule contract before issue linking can use configured rules.
Changes
PR stack
Merge in this order:
Depends on: #86267
Followed by: #86270
This PR is based on
hp/error-tracking-severity-rules-01-api; review only changes relative to that branch. After PR 1 is squash-merged, replay only this PR's unique commit onto updatedmaster, force-push with lease, then retarget. Do not retarget blindly.How did you test this code?
cargo fmt --checkcargo test -p cymbal --test severity_rulescargo check -p cymbalThe tests cover team isolation, enabled-only loading, every supported severity, first-match ordering, fallback, invalid-program disabling, and step-budget skipping.
👉 Stay up-to-date with PostHog coding conventions for a smoother review.
Automatic notifications
Docs update
None for this internal evaluator layer.
🤖 Agent context
Autonomy: Human-driven (agent-assisted)
Implemented with pi coding agent. Repo guidance and the OpenSpec apply, Rust testing, and stacked PR skills shaped the implementation and split. A dedicated typed rule severity keeps the evaluator testable without widening Cymbal's internal inferred-severity type.